Electronic devices having multiple position cameras

ABSTRACT

A technique includes selecting at least one boundary for a panoramic image to be captured by a camera of an electronic device. The technique includes, based at least in part on the at least one selected boundary, moving the camera relative to a housing of the electronic device to acquire data representing a plurality of images that are associated with different imaged areas; and processing the acquired data to construct the panoramic image.

BACKGROUND

An electronic device, such as a smartphone, may have one or multiplecameras for purposes of acquiring still images or video. For example, asmartphone may have cameras on its front and rear faces. One of thecameras may be active at a given time, and a display of the smartphonemay serve as a viewfinder for the active camera.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a front view of an electronic device having a multipleposition camera according to an example implementation.

FIG. 1B is a rear view of the electronic device of FIG. 1A according toan example implementation.

FIG. 2 is an illustration of a field of vision of the camera of FIG. 1Aand an effective field of vision obtained through the dynamicpositioning of the camera during image acquisition according to anexample implementation.

FIG. 3 is a flow diagram depicting a technique to generate a panoramicimage according to an example implementation.

FIG. 4 is an illustration of a user-defined predetermined pattern foracquiring images by a multiple position camera according to an exampleimplementation.

FIG. 5A is an example of a panoramic image acquired by a multipleposition camera according to an example implementation.

FIG. 5B is a front view of an electronic device illustrating selectionof a left boundary of the panoramic image of FIG. 5A according to anexample implementation.

FIG. 5C is a front view of the electronic device illustrating selectionof the right boundary of the panoramic image of FIG. 5A according to anexample implementation.

FIGS. 6 and 7 are perspective views of systems for controlling movementof a multiple position camera according to example implementations.

FIG. 8 is an illustration of fields of vision for imaging elements of afixed multiple element imaging array according to an exampleimplementation.

FIG. 9 is a flow diagram depicting a technique to provide datarepresenting a composite image from image data acquired by a fixedmultiple element imaging array according to an example implementation.

FIG. 10 is a schematic diagram of a physical machine according to anexample implementation.

DETAILED DESCRIPTION

In accordance with example implementations that are described herein, anelectronic device includes a multiple position camera, which emulatesthe movement of the human eye to dynamically acquire a plurality ofimages (also called “snapshots” and “pictures” herein) at multiplecamera positions without the user physically moving the electronicdevice. More specifically, in accordance with example implementations,the camera is attached to a housing of the electronic device using amount, which allows an actuator of the camera to dynamically positionthe camera as the camera acquires images. In this manner, in accordancewith an example implementation, the camera may be positioned over anazimuthal angle range of up to 180 degrees and a polar angle range up to180 degrees with respect to the housing of the electronic device.

The multiple position camera may be beneficial for various modes ofoperation of the electronic device. For example, in a panoramic snapshotacquisition mode of operation, the multiple position camera may acquireimage data for a panoramic snapshot (i.e., an image that spans beyondthe field of vision of the camera) without the user of the electronicdevice physically moving the electronic device. In this context, a“panoramic snapshot” or “panoramic image” refers to an image thatextends in at least one dimension beyond the camera's field of visionand is generated by the camera by combining, or “stitching” togetherimages that are captured at multiple camera positions. For example, thewidth of the panoramic snapshot may exceed the width of the camera'sfield of vision, and accordingly, the camera may be moved in aleft-to-right direction or in a right-to-left direction to acquiremultiple images that span the width of the panoramic snapshot. As otherexamples, the panoramic snapshot may have a height that exceeds theheight of the camera's field of vision or may have both a width and aheight that exceed the corresponding dimensions of the camera's field ofvision.

The dynamic positioning and image capturing by multiple position camerain connection with acquiring images for a panoramic snapshot eliminateshuman error and/or uncertainty associated with the rate at which a humanmay otherwise move the electronic device (for a fixed position camera)to acquire image data for the panoramic snapshot.

The multiple position camera may also be used in a successive snapshotacquisition mode of operation (as called a “burst” mode of operation) inwhich the electronic device may be programmed so that the multipleposition camera captures multiple images at multiple positions in a“burst,” i.e., the camera captures the images or snapshots at differentlocations in rapid time succession, such that the snapshots are acquiredone after another in a relatively short period of time. In this manner,the electronic device may be programmed with a user-defined pattern oftarget positions for acquiring multiple images at successive timeswithout the user moving the electronic device.

Although a person may move an electronic device that contains a fixedposition camera for purposes of taking successive sequential snapshots,moving the electronic device to aim the camera at one point and thenanother while taking successive snapshots may adversely affect thesnapshot quality. Moreover, it may be difficult for a human to multitaskby, for example, looking for a snapshot to be captured, capturing thesnapshot relatively quickly and then repeating the process multipletimes to acquire other snapshots. This may be particularly challengingwhen the user is actively paying attention to an event (a sportingevent, for example). Thus, the use of the multiple position camera andthe successive snapshot acquisition mode of operation means that theuser of the electronic device may rapidly acquire successive snapshotsat different locations without moving.

The multiple position camera may also be used in a single snapshotcapture mode of operation of the electronic device in which the multipleposition camera captures a snapshot at an angle that is pre-selected bythe user so that the user does not otherwise assume an awkward posture(raising the electronic device over the user's head, turning sideways,and so forth) to capture the snapshot. Moreover, because the user maycapture snapshots in the single snapshot capture mode of operation or inany of the other modes of operation without physically moving theelectronic device or assuming a posture identifiable with picturetaking, the snapshots may be captured without raising awareness of thepicture taking activity.

Referring to FIG. 1A, as a more specific example, in accordance withsome implementations, the portable electronic device may be asmartphone, such as an example smartphone 100 that is depicted in FIG.1A. It is noted that other electronic devices, both portable andotherwise, may contain a multiple position camera, in accordance withfurther example implementations, such as a tablet, a convertible, alaptop, an unmanned aircraft (or “drone”), a wearable electronic device,a medical device, or in general, any electronic device that may be usedto take or capture still images (or snapshots or photographs) or videoimages.

In accordance with example implementations, the electronic device 100includes one or multiple, multiple position cameras, such as a multipleposition camera 110 that is disposed on the front face of the electronicdevice 100 (the face of the electronic device 100 containing a visualdisplay 120, such as a touch screen) and a multiple position camera 122(FIG. 1B) that is disposed on the rear face of the electronic device 100(i.e., the camera 122 is disposed on the face of the electronic device100 opposite the display 120). Referring to FIG. 1A, the camera 110, forthis example implementation, is disposed above the visual display 120 ofthe electronic device 100. Thus, depending on the particleimplementation, the electronic device 100 may have a single, multipleposition camera on its front or rear face, or may have a multipleposition camera on its front face and a multiple position camera on itsrear face. In accordance with further example implementations, theelectronic device 100 may have more than two multiple position cameras;may have one or multiple, multiple position cameras, along with one ormultiple fixed position cameras; and so forth.

In accordance with example implementations in which the electronicdevice 100 has dual cameras, the electronic device 100 may be configured(via user selection, for example) to have one of two camera modes ofoperation: a user facing mode or a world facing mode. For the userfacing camera mode, the display screen 120 displays a viewfinder imagefor the camera 110 as the display and the camera 110 acquires imagesdirected toward the user (i.e., projecting outwardly from the displayscreen 120). For the world facing mode, the rear facing camera 122acquires images directed away from the rear face of the electronicdevice 100, and the display screen 120 displays a viewfinder image forthe camera 122.

In either the user or world facing camera modes, the display 122 maydisplay still or video images that are acquired by one its cameras. Inthis context, a “snapshot,” “image” or “photograph” that is acquired orcaptured by a camera refers to a still image acquired due to a singlecamera shot, an image that coincides with a video frame, an imageacquired as part of a multiple set of images acquired, a derived orconstructed panoramic image, an image captured as part of apredetermined pattern of images taken at different camera locations, andso forth. Moreover, acquiring or capturing an image, snapshot orphotograph refers to an imager (an imaging array of the camera, forexample) acquiring data, which represents the image, snapshot orphotograph.

In the following example implementations, it is assumed that theelectronic device 100 is in the world facing camera mode of operation,with the rear facing camera 122 capturing images and the visual display120 displaying the images that are acquired by the rear facing camera122. It is noted that, however, in accordance with furtherimplementations, the electronic device 100 may be placed in a userfacing camera mode of operation, with the systems and techniques thatare described herein being applicable to the front facing camera 110 andthe images acquired by the camera 110.

Referring to FIG. 2 in conjunction with FIG. 1B, the camera 122 may havea field of vision 204 that may be generally characterized as having anassociated height H₁ and an associated width W₁. The user, however, maydesire to capture a larger image (a panoramic image or snapshot, forexample), which is associated with a larger field of vision 206 that maybe characterized by a width W₂ and a height H₂. As depicted in theexample for FIG. 2, at least one of the height H₂ and width W₂ of thefield of vision 206 may exceed the corresponding dimension of thecamera's field of vision 204. As such, for purposes of acquiring thelarger image, the electronic device 100, in the panoramic snapshotacquisition mode of operation, positions the camera 122 at multiplelocations, the camera 122 captures images at these locations, and theelectronic device 100 combines, or stitches, the multiple imagestogether to form a larger composite, panoramic image. It is noted thatthe images that are captured by the camera 122 may be overlapping images(i.e., images overlapping in one or multiple dimensions), in accordancewith example implementations.

For purposes of moving the camera 122, the electronic device 100 mayinclude an actuator 124 (See FIG. 1B), which is constructed to exert aforce (or forces) on the camera 122 to rotatably position the camera 122about one or multiple axes (as controlled by the camera's mount), inresponse to one or multiple control signals that are provided by acontroller 114. The controller 114 may also control when the camera 122acquires images. In this manner, for purposes of dynamically positioningthe camera 122 and acquiring multiple images, the controller 114 maycause the actuator 124 to move the camera 122 to a first predeterminedposition, cause the camera 122 to capture an image at the firstpredetermined position, cause the actuator 124 to move the camera 122 toa second predetermined position, cause the camera 122 to capture anotherimage, and so forth.

In accordance with example implementations, the controller 114 may,prior to the taking of the images for a panoramic snapshot, receive userinput to define the boundaries of the range over which the camera movesand captures images. Moreover, the controller 114 may further receiveuser input that defines the number of images to capture during thedynamic positioning and image acquisition, or in accordance with furtherexample implementations, the controller 114 may determine the number ofimages to acquire based at on the user-defined range. The controller 114may further determine positions at which the images are to be acquiredas the camera 122 moves over the user-defined range. The controller 114may then (in response to the user pressing a snapshot “button”, forexample) operate the actuator 112 to move the camera 122 and captureimages at the predetermined positions.

Thus, referring to FIG. 3, in accordance with example implementations, atechnique 300 includes selecting (block 304) at least one boundary for apanoramic image to be acquired by a camera of an electronic device and,based at least in part on the identified boundary(ies), moving (block308) the camera relative to a housing of the electronic device toacquire data representing a plurality of images that are associated withdifferent imaged areas. The technique 300 includes processing (block312) the acquired data to construct the panoramic image.

In accordance with further example implementations, the electronicdevice 100 may operate in a successive snapshot acquisition mode ofoperation to acquire snapshots at user-defined camera positions. In thismanner, instead of defining the range over which the camera 122 moves,the user may provide input selecting positions at which the camera 122is to acquire images. In this manner, as depicted in FIG. 4 in anillustration 400, several camera target locations, or positions P₁, P₂and P₃, may be preselected by the user (via one or more input devices ofthe electronic device 100), and the controller 114 may thereaftercontrol the position of the camera 122 for purposes of capturing imagesat the selected target positions. FIG. 4 illustrates the dynamicpositioning of the camera 122. In particular, FIG. 4 depicts a lens 123of the camera 122 being oriented to such that an optical axis of thecamera 122 is aligned in a direction 402 toward position P1. Afteracquiring the image associated with position P1, the controller 114 maythen reposition the camera 122 so that the optical axis of the camera122 is aligned with a direction 404 toward position P2. Subsequently,after acquiring the image associated with position P2, the controller114 may reposition the camera 122 so that the optical axis of the camera122 is aligned in a direction 406 toward position P3, where anotherimage is acquired.

FIG. 5A depicts an example scene 500 to be acquired by the electronicdevice 100 for the panoramic snapshot acquisition mode of operation. Forthis example, the scene 500 corresponds to a panoramic snapshot, as thefield of vision that is associated with the scene 500 exceeds the fieldof vision of the camera 122 in at least one dimension. FIGS. 5B and 5Cillustrate how the user may select boundaries for the panoramicsnapshot. In particular, in accordance with example implementations,FIGS. 5B and 5C illustrate how the user may provide input to theelectronic device 100 using a graphical user interface (GUI) of thedevice 100 for purposes of defining the boundaries of the panoramicsnapshot. More specifically, referring to FIG. 5B, in accordance with anexample implementation, a GUI for the electronic device 100 displays anoverlay image 530 on top of a current viewfinder image for the camera122. The overlay image 530 for this example implementation hasdirectional arrows 532 that may be used, as described herein, to movethe camera 122 (via the actuator 124) for purposes of allowing the userto select the boundaries of the panoramic snapshot.

For the example scenario that is depicted in FIG. 5B, the display 120shows a viewfinder image that corresponds to the left hand portion 504of the scene 500 in FIG. 5A, and the left side of the image positioncorresponds to the left boundary 506 of the scene 500. The user may,through touch gestures (as an example), interact with the GUI alongdirectional arrows 532 of the overlay image 530 for purposes of panning,or moving, the camera 110 to acquire a different viewfinder image. Forexample, the user may, through a swiping left-to-right touch gesture bythe user's finger 550 in the direction of the arrow 532-1, cause thecamera 122 to pan left until the left edge of the displayed viewfinderimage corresponds to the left boundary 506 of the panoramic image 506,as depicted in FIG. 5B. When the displayed viewfinder image correspondsto a boundary for the panoramic snapshot to be acquired, the user maythen, for example, interact with the GUI (tap on the display 120, forexample) for purposes of indicating selection of a boundary for thepanoramic snapshot.

Other boundaries of the panoramic snapshot may be selected in a similarmanner. For example, the user may, via the arrows 532, pan, or move, thecamera 122 so that the camera 122 pans (as shown in the viewfinderimage) to another boundary of the panoramic image 500. For example, theuser may pan the camera 122 right using a right-to-left swiping touchgesture in the direction of the arrow 532-2 until the viewfinder imageon the display 120 corresponds to the right boundary edge 510 (FIG. 5A)of the panoramic image 500 to be acquired, as depicted in FIG. 5C. Inthis manner, the right edge of the displayed viewfinder image in FIG. 5Ccorresponds to the right boundary 512 (FIG. 5A) of the panoramicsnapshot to be acquired. The user may then interact with the GUI (tap onthe display 120, for example) to indicate the selection of the boundary(the right boundary 512 for this example). In a similar manner, the usermay select upper and lower boundaries of the panoramic image 500 if thepanoramic image vertically exceeds the camera's field of vision.

The GUI may provide other features for the user and may provide otherways to select the boundaries of the panoramic snapshot or image to beacquired, in accordance with further example implementations. Forexample, in accordance with some implementations, the GUI may display aviewfinder image, which itself may be a panoramic image that isconstructed by the electronic device causing the multiple positioncamera 122 to move about one or multiple axes, acquire snapshots at thecorresponding multiple positions, and stitch together the snapshots toform the viewfinder image. The viewfinder image may be a maximum-sizedviewfinder image (a panoramic image corresponding to the full, effectivefield of vision of the multiple position camera), an image correspondingto the field of vision of the camera 122 in a single position, or animage sized somewhere in between. The GUI may display a boundary frame,or box, on the viewfinder image, and the user may selectively sizeand/or move the boundary box to select a portion of the viewfinder imagefor the panoramic snapshot. In this manner, the user may preview aversion of the panoramic snapshot before depressing a button of the GUIto initiate capture of the panoramic image.

Moreover, in accordance with some implementations, the GUI may displayan arrow, informing the user of a potential direction in which theboundary box may be moved off screen to capture a different portion ofthe panoramic image. In accordance with some implementations, theboundary box may highlight a particular portion of the panoramic imageto be acquired, allowing the user to select one or more boundaries ofthe panoramic image. In accordance with some implementations, the GUImay detect the user touching the boundary box for at least apredetermined duration (a duration of three seconds, for example), sothat after the GUI detects the user touching or holding the boundary boxfor at least this duration, the GUI may change the color of the boxand/or arrow to represent that box has been used to select correspondingboundaries for the panoramic snapshot. Moreover, in accordance with someimplementations, the GUI may provide haptic feedback when the user tapsand moves the boundary box. The boundary box may also provide userfeedback about what has been captured in the panoramic snapshot so faras the camera moves and acquires snapshots.

In accordance with example implementations, the GUI may allow a user topreselect the center of the panoramic picture with a tapping gesture onthe display where the user wants the center. The GUI may also allow theuser to use one or multiple other touch gestures (tap, double tap, drag,pinch, spread and rotate touch gestures, as examples) to manipulate theposition of the boundary box and/or resize the box. In general, inaccordance with example implementations, the boundary box may allow theuser to preselect the panoramic snapshot or preview the snapshot beforetaking it; may provide orthogonal guidance for acquiring the panoramicsnapshot; and may allow through the widening or movement of the boundarybox the cropping of sections that the user does not want to include inthe picture. The GUI, in accordance with example implementations, mayalso allow the user to adjust the boundary box so that the panoramicsnapshot is set to a higher or lower angle.

In accordance with example implementations, the electronic device 100may contain a GUI that provides an overlay image similar to or the sameas the overlay image 530, for purpose of allowing a user to supply inputto identify specific positions at which the camera 122 acquires imagesfor the successive snapshot acquisition mode of operation.

In accordance with further example implementations, for purposes ofallowing a user to identify pre-selected locations at which thesnapshots or images are to be acquired during the successive snapshotacquisition mode of operation, a GUI of the electronic device 100 may,for example, display a viewfinder image from which the user maypre-select portions of the viewfinder image. In this manner, byselecting the portions of the viewfinder image, the user also selectslocations at which the camera 122 acquires the snapshots. For example,the viewfinder image may be the image of a football field, as seenthrough a spectator's smartphone camera. The user may, for example, tapon the display screen of the smartphone for purposes of selectingportions of the image of the football field, as seen in the viewfinderimage. These selected image portions may be, for this example, images ofdifferent parts of the football field.

In accordance with example implementations, the GUI may display (belowthe viewfinder image, for example) the selection image portions asthumbnail images (i.e., smaller images) to allow the user to preview ofeach of the selected positions. Moreover, in accordance with someimplementations, the GUI may, in response to the user selecting one ofthe thumbnail images (through a touch gesture, for example), enlarge thethumbnail image. The GUI may also provide feedback showing (through thethumbnail images) how many target locations have been selected and howmany are available to be selected (via blank thumbnail images, forexample). Moreover, in accordance with some implementations, the GUI mayallow the user to, through touch gestures, edit the thumbnail and/orviewfinder image size, replace a given thumbnail image (tocorrespondingly select another target location), and so forth.Additionally, in accordance with some implementations, the GUI may allowthe user to save individual thumbnail images.

In accordance with some implementations, the electronic device 100 maycontain an engine that tracks objects associated with the thumbnailimages. For example, in accordance with some implementations, the enginemay perform facial recognition and/or eye tracking to track one ormultiple persons in a given thumbnail image. Therefore, in accordancewith some implementations, in response to a person in the thumbnailimage moving, for example, the engine may acquire time successivesnapshots of the person (at different locations) as the person moves.

In accordance with example implementations, the electronic device 100may provide a GUI that provides an overlay image similar to or the sameas the overlay image 530 to receive input to define a snapshot captureangle for the single snapshot acquisition mode of operation. In thismanner, in accordance with example implementations, the GUI may displaya viewfinder image, which itself may be a panoramic image, i.e., animage constructed by the electronic device causing the camera to moveover one or multiple axes to acquire images. The panoramic image may bea maximum size panoramic image, i.e., the maximum size may be displayedby the GUI, or a smaller, panoramic image. When displaying a smallerpanoramic image, the GUI may display, for example, a directional controlbutton for purposes of allowing the user to move a particular boundaryof the displayed panoramic image, increase a width or height of thedisplayed panoramic image, and so forth. Moreover, in accordance withsome implementations, the GUI may display one or multiple directionalarrows at boundaries of the displayed panoramic image for purposes ofindicating to the user that the displayed panoramic image may be movedin a particular direction. Moreover, in accordance with someimplementations, the GUI may display a “maximum” button to allow theuser to select the button to obtain the maximum possible panoramic view.Moreover, the GUI may display other features, such as features informingthe user about the photograph size versus the available storage space onthe electronic device. Therefore, by moving the displayed panoramicimage, the user may select a snapshot capture angle for the singlesnapshot acquisition mode of operation. Thus, the user may be able todrag, crop, modify and set the frames for image capture with touchgestures (as an example) before the user depresses a button to acquirethe snapshot.

Referring to FIG. 6, in accordance with example implementations, thecamera 122 may include a sphere-shaped body 604 (a plastic body, forexample), and the camera 122 may have an optical axis 602, which isaligned with the lens, or optics 123, of the camera 122, as depicted inFIG. 6. In accordance with some implementations, the controller 114(FIG. 2) may provide signals (voltages produced by a voltage regulator615, for example) to control the currents in electroactive polymerelements 614 (here, the actuator 124 (FIG. 2)) that are attached to thebody 604 for purposes of moving the body 604 to a selected cameraposition. In this manner, in accordance with example implementations,the camera 122 may have at least two electroactive polymer elements 614(four electroactive polymer elements 614-1, 614-2, 614-3 and 614-4 beingdepicted in FIG. 6) that are disposed on opposite sides of a given axisabout which the body 604 pivots. By controlling the currents in themembers 614, the controller 114 may correspondingly control the positionof the camera's optical axis 602, i.e., control the direction in whichthe camera acquires an image.

Although not depicted in FIG. 6, the camera 122 may, in accordance withexample implementations, contain an imager within the body 604,electronics to control the image capture and readout of data from theimager and wires that extend from the body 604 to other circuitry of theelectronic device 100.

In accordance with further example implementations, the electroactivepolymer elements 614 may be replaced with, for example, gears that aredriven by motors (here the actuator 124) to apply forces topredetermined parts of the body 604 for purposes of rotating and/orpositioning the body 604; pulleys that are operated by motors forpurposes of retracting and unreeling members connected to the body 604for purposes of controlling the body's position; tracks; or other suchmechanisms.

Referring to FIG. 7, in accordance with an example implementation, thebody 604 may be mounted in a three axis gimbal mount 700. The gimbalmount 700 includes three gimbals 710, 714 and 718, which are constructedto pivot, or rotate, about corresponding orthogonal axes 726, 728 and730, respectively, as controlled by electrical linear stepper motors754, 758 and 750, respectively.

Other implementations are contemplated for actuating and mounting thecamera, in accordance with further example implementations. For example,in accordance with further example implementations, the body 604 may bemounted in a synovial joint or may be positioned as part of a jointedmechanical arm. As another example, the body 604 may be mounted to movealong a curved track. As another example, in accordance with furtherimplementations, the body 604 may contain magnets so that anelectromagnetic field that is controlled by currents in surroundingelectrical windings may be regulate to controllably position the body604.

Referring to FIG. 8, in accordance with further implementations, aportable electronic device 804 (a smartphone, for example) may, includea fixed array 822 of cameras The cameras of the array 822 have opticalaxes that are oriented in different directions corresponding tooverlapping fields 810 of vision. As such, an image rendering engine 808of the electronic device 804 may process image data acquired by thecameras of the array 822 (i.e., image data representing multiple images,or snapshots captured by the array 822) for purposes of combining theimage data to generate, in general, a composite image that may bederived from any part of the overall field of the area that is imaged bythe array 822. As such, the image rendering engine 808 may process theimage data from the array 822 to derive a snapshot from a selected partof the imaged area.

A display 816 of the electronic device 804 may, for example, display aviewfinder image that may represent all or part of a composite imagederived from the images that are captured by the cameras of the imagingarray 822. Through interaction with the display 816 of the electronicdevice 804, a user may, for example, refine the boundaries of an imageto be provided by the rendering engine 808. In accordance with someimplementations, the final composite image may be a panoramic image thatextends in at least one dimension beyond the field of vision that isassociated with the array 822, and the electronic device 804 may providea GUI to select boundaries of the panoramic image, as described herein.Moreover, in accordance with example implementations, the electronicdevice 804 may provide a GUI to select a viewing angle and boundaries ofan image to be provided by the rendering image 808, described herein.

In accordance with example implementations, the electronic device 804may provide a GUI to select time sequenced positions associated withmultiple images that are to be provided by the rendering engine 808,i.e., select target positions associated with a “burst” of acquiredsnapshots in the successive snapshot acquisition mode of operation forthe electronic device. For example, the array 822 may capture compositeimages from the same imaged area at successive times, and the GUI maydefine different portions of the composite image (associated withdifferent effective camera positions) from which the rendering engine808 provides images corresponding to the times and positions.

In accordance with example implementations, each camera of the array 811may acquire an image that is distorted near the boundaries of itscaptured image. In this manner, FIG. 8 depicts a field of vision 810-1for a given camera of the array 822. The field of vision 810-1 has anassociated non-degraded region 812, as compared to the remaining portionof the field of vision 810-1, which is associated with a degraded image.The degraded portion or portions of a captured image may be due to anoptical aberration that results in a blurring in the degraded imageregion. Because the images from the cameras overlap, the degradedportions of these camera images may be removed to enhance the quality ofthe composite image that is formed from the camera images. In thismanner, in accordance with example implementations, the rendering engine808 may filter the camera images by applying a predefined spatialboundary to the image acquired by each camera for purposes of extractingan image that is assumed to be associated with the non-degraded portionof the image; and the rendering engine 808 may combine the extractednon-degraded image portions to form the composite image.

Thus, referring to FIG. 9 in conjunction with FIG. 8, in accordance withsome implementations, the portable electronic device 804 performs atechnique 900 that is depicted in FIG. 9. Pursuant to the technique 900,the electronic device 804 receives (block 904) input that identifies theboundaries of a composite image to be acquired by an array of cameras.The technique 900 includes receiving (block 908) image data acquired bythe array of cameras. Each camera has an associated field of vision, atleast some of the fields of vision overlap each other, and at least onefield of vision of one of the cameras is associated with a first regionthat has a degraded quality relative to a second region of the field ofvision. The technique 900 includes processing (block 912) the image datato provide data representing the composite image, based at least in parton the identified boundaries and the identification of the first region.

Referring to FIG. 10, in accordance with some implementations, theelectronic devices that are described herein may be formed by one ormultiple physical machines, such as physical machine 1000 that isdepicted in FIG. 10. In general, the physical machine 1000 is an actualmachine that is made up of hardware 1010 and machine-executableinstructions (or “software” 1050.) In general, the hardware 1010 mayinclude one or multiple cameras 1016. In this manner, the camera 1016may be a multiple position camera and/or the hardware 1010 may includemultiple cameras 1016 that are part of a fixed array of cameras.Moreover, in accordance with example implementations, the hardware 1010may include multiple, multiple position cameras 1016. The hardware 1010may also include one or multiple camera actuators 1028 for purpose ofpositioning one or multiple, multiple position cameras, as well as oneor multiple mounts (not shown) for the multiple position camera(s).

The hardware 1010 may also include one or multiple processors 1014 (oneor multiple central processing units (CPUs), processing cores, and soforth), which execute the machine-executable instructions 1050 forpurposes of performing one or more of the techniques that are disclosedherein. In this manner, a memory 1018 of the hardware 1010 may storeprogram instructions that when executed by one or multiple processors1014 cause the processor(s) to control the position of a multipleposition camera 110; provide one or multiple GUIs to define panoramicimage boundaries, camera angles and camera positions; stitch togetherimages to form composite images; filter degraded portions fromcamera-acquired images; and so forth.

The memory 1018, in general, is a non-transitory storage medium that maystore, as examples, data acquired by the camera; machine-executableinstructions that are executed by the processor(s) 1014; datarepresenting a panoramic snapshot or image; data representing multipleimages captured by an array of fixed position cameras; data representingmultiple images captured by a multiple position camera at differentpositions of the camera; and so forth. The memory 1018 may be formedfrom semiconductor storage devices, memristors, magnetic storagedevices, phase change memory devices, a combination of one or more ofthese storage technologies and so forth, depending on the particularimplementation.

In accordance with example implementations, the machine-executableinstructions 1050 may include instructions 1059, that when executed bythe processor(s) 1014 cause the processor(s) 1014 to form a cameracontroller engine 1056 to interact with a camera actuator to control amultiple position camera, as described herein Moreover, themachine-executable instructions 1050 may include instructions 1058 thatwhen executed by the processor(s) 1014 cause the processor(s) 1014 todisplay a GUI for purposes of receiving user input defining camerapositions, image boundaries; panoramic image boundaries, and so forth.The machine-executable instructions 1050 may further includeinstructions 1058 that when executed by the processor(s) 1014 may causethe processor(s) 1014 to render images acquired by the camera, such asstitching together multiple images to form a panoramic snapshot,combining images to remove degraded image portions, and so forth.Moreover, the machine-executable instructions 1050 when executed by theprocessor(s) 1014 may cause the processor(s) 1014 to provide many othercomponents, such as instructions 1062 to form one or multipleapplications, instructions 1066 to form an operating system 1066, and soforth.

In accordance with further example implementations, all or part of theabove-described processor-based components may be replaced by adedicated, hardwired circuitry or by one or multiple applicationspecific integrated circuits (ASICs).

Other implementations are contemplated, which are within the scope ofthe appended claims. For example, for example implementations that aredescribed herein, the electronic device may contain a visual display maybe used for such purposes as selecting boundaries of a panoramic imageto be captured, selecting target positions for the successive snapshotmode of acquisition, selecting the viewing angle, and so forth. However,in accordance with further example implementations, the electronicdevice that contains a multiple position camera may not contain a visualdisplay. In this manner, parameters for the particular capture of one ormultiple snapshots or images by the electronic device may be providedusing input and/or output devices for the electronic device, other thanvisual display-based devices. For example, an electronic device thatcontains a multiple position camera may be a wearable device, such as awatch, and the user may select parameters for image capture using one ormultiple buttons of the watch. As another example, an electronic devicethat contains a multiple position camera may be an unmanned aircraft, ordrone, and the user may select one or more image capturing parameters bywirelessly communicating with the drone (on which the camera is mounted)through another device (a handheld smartphone or laptop, for example).

While the present invention has been described with respect to a limitednumber of embodiments, those skilled in the art, having the benefit ofthis disclosure, will appreciate numerous modifications and variationstherefrom. It is intended that the appended claims cover all suchmodifications and variations as fall within the true spirit and scope ofthis present invention.

What is claimed is:
 1. An electronic device comprising: an input deviceto receive an input to identify boundaries of a scene, wherein theidentified boundaries correspond to boundaries of a panoramic image, thepanoramic image has an associated first field of vision, and theboundaries comprise a first boundary and a second boundary; a multipleposition camera having an optical axis and having an associated secondfield of vision less than the first field of vision, wherein the camerato acquire sub-images of the panoramic image, and the sub-imagescorrespond to different parts of the scene; and an actuator to move thecamera based on the input to pan the optical axis of the camera acrossthe scene to acquire the sub-images, wherein the panning of the cameracomprises moving the camera such that the optical axis of the cameramoves from a first position at which the camera acquires a firstsub-image of the sub-images coinciding with the first boundary to asecond position at which the camera acquires a second sub-image of thesub-images coinciding with the second boundary.
 2. The electronic deviceof claim 1, further comprising: a controller to control the actuator tomove the camera based at least in part on the input; and aprocessor-based engine to combine data associated with the plurality ofimages to form the panoramic image.
 3. The electronic device of claim 1,further comprising: a housing; and a mount to hold the camera and allowthe camera to pivot about at least one axis relative to the housing toacquire the sub-images.
 4. The electronic device of claim 3, wherein themount comprises a socket or a gimbal.
 5. The electronic device of claim1, wherein the input device comprises a touch screen to display aviewfinder image acquired by the camera and receive a touch-based inputto select the boundaries.
 6. The electronic device of claim 1, whereinthe actuator comprises a motor, an electromagnet or an electroactivepolymer.
 7. The electronic device of claim 1, wherein the input furtheridentifies a pattern of time sequenced locations to acquire thesub-images.
 8. The electronic device of claim 1, further comprising: atelephony device; and a housing to contain the camera, the actuator, theinput device and the telephony device, wherein the input devicecomprises a touch screen to acquire the input.
 9. The electronic deviceof claim 8, wherein the camera has an orientation to face a viewer ofthe touch screen or an orientation to face away from the viewer of thetouch screen.
 10. The electronic device of claim 1, wherein the actuatormoves the camera such that the sub-images completely cover the scene.11. An article comprising a non-transitory computer readable storagemedium to store instructions that when executed by a computer cause thecomputer to: receive an input to identify boundaries of a scene, whereinthe identified boundaries correspond to boundaries of a panoramic imageto be acquired using a multiple position camera, the panoramic image hasan associated first field of vision, the boundaries comprise a firstboundary and a second boundary, the camera has an optical axis and hasan associated second field of vision less than the first field ofvision, the camera to acquire sub-images of the panoramic image, and thesub-images correspond to different parts of the scene; and control anactuator to move the camera based on the input to pan the optical axisof the camera across the scene to acquire the sub-images, wherein thepanning of the camera comprises moving the camera such that the opticalaxis of the camera moves from a first position at which the cameraacquires a first sub-image of the sub-images coinciding with the firstboundary to a second position at which the camera acquires a secondsub-image of the sub-images coinciding with the second boundary.
 12. Thearticle of claim 11, wherein: the computer comprises a housing; thecomputer comprises a touch screen; and the storage medium to storeinstructions that when executed by the computer cause the computer toreceive the input in response to physical interaction with the touchscreen.
 13. The article of claim 11, wherein the storage medium to storeinstructions that when executed by the computer cause the computer tochange a viewing angle associated with the panoramic image in responseto the input.
 14. The article of claim 11, wherein the storage medium tostore instructions that when executed by the computer cause the computerto provide a graphic user interface on a display of the computer toallow entry of the input representing the boundaries in response to aviewfinder image being displayed on the display.
 15. A methodcomprising: in response to an input, identifying boundaries of a scene,wherein the identified boundaries correspond to boundaries of apanoramic image, the panoramic image has an associated first field ofvision, and the boundaries comprise a first boundary and a secondboundary; moving a multiple position camera to acquire data representingsub-images of the panoramic image, wherein the camera has an opticalaxis and has an associated second field of vision less than the firstfield of vision, the sub-images correspond to different parts of thescene, moving the camera comprises moving the camera based on the inputto pan the optical axis of the camera across the scene to acquire thesub-images, and the panning of the camera comprises moving the camerasuch that the optical axis of the camera moves from a first position atwhich the camera acquires a first sub-image of the sub-images coincidingwith the first boundary to a second position at which the cameraacquires a second sub-image of the sub-images coinciding with the secondboundary; and processing the acquired data to construct the panoramicimage.
 16. The method of claim 15, wherein moving the camera comprisesmoving the camera such that the sub-images completely cover the scene.17. The method of claim 15, wherein processing the acquired datacomprises stitching the sub-images together to form the panoramic image.18. The method of claim 15, further comprising: identifying a pattern oftime sequenced locations to acquire the sub-images, wherein moving thecamera comprises moving the camera such that the optical axis of thecamera moves to each location of the pattern of time sequencedlocations.
 19. The method of claim 15, wherein moving the camera furthercomprises moving the camera about a socket or a gimbal.
 20. The methodof claim 15, wherein moving the camera further comprises moving.